#include <iostream>
using namespace std;

/*
    引用作为函数的形参--》引用最大的用途   只能是引用左值
    小心左值和右值的区别


    左值：贝赋值运算左边的式子
    右值：赋值运算右边的式子  包括函数调用的返回值
    左值不能是表达式，只能是变量,不能是常量
    区分左值和右值的方法：左值可以取地址，右值不行
    C语言
    int x,y:
    x+y=10;//错误，左值不能是表达式
    x+1=10；//错误，左值不能是表达式
    x=10-1；//正确，右值可以是表达式
*/

void func(int &b)
{
    cout << "传递过来的参数值是: " << b << endl;
}

int main()
{
    int n1 = 10;

    // 写法1
    func(n1);

    // 写法2
    // func(n1 + 1); // 错误 n1+1 是个表达式，只能作为右值

    // 写法3
    // func(20);  // 错误，20是常量，不能作为左值
    return 0;
}